/*
 * @Descripttion: 
 * @Author: 银河以北
 * @Date: 2024-04-27 22:29:12
 * @LastEditors: 银河以北
 * @LastEditTime: 2024-04-28 22:29:43
 */


/**
 * 将token存储到localStorage中，并设置过期时间。
 * @param {string} token - 需要存储的token字符串。
 * @param {number} [time=7] - token的过期天数，默认为7天。
 * @returns {boolean} 返回localStorage.setItem方法的执行结果，即存储是否成功。
 */
export function setToken(token, time = 7) {
    let date = new Date();

    // 设置过期时间
    date.setTime(date.getTime() + 24 * 60 * 60 * 1000 * time);

    const data = {
        token,
        time: date.getTime()
    }
    return localStorage.setItem("token", JSON.stringify(data));

}

// 从本地获取token
export function getToken() {
    const data = JSON.parse(localStorage.getItem("token"));
    if (!data) return null;

    const now = new Date().getTime();
    if (now - data.time > 24 * 60 * 60 * 1000) {
        localStorage.removeItem("token");
        return null;
    }
    return data.token;
}